package ppms.commons.data.view;

import java.util.List;

import ppms.commons.data.controller.ITreeViewController;
import ppms.commons.data.entity.IDataEntity;
import ppms.commons.data.event.ITreeEvent;

/**
 * 树形数据视图接口
 * @author gavin 2009-4-6
 * @param <T> 树节点值类型
 *
 */
public interface IDataTreeView extends IDataView,ITreeEvent
{
    
    /**
     * 获取数据控制器对象
     * @return
     */
    public ITreeViewController getDataController();
    
    /**
     * 设置数据控制器对象
     * @param dataController
     */
    public  void setDataController(ITreeViewController controller);
    
    /**
     * 获取根元素数据
     * @return
     */
    public IDataEntity getRootData();
    
    /**
     * 获取对象的子对象
     * 1. 只获取其直接子对象,不包含孙节点
     * @param parentData 父对象
     * @return
     */
    public List<IDataEntity> getChilds(IDataEntity parent);
    
    
    
}
